package jp.co.ufp.voicetch_free;

import jp.co.ufp.voicetch.base.listener.MainOnClickListener;
import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.Menu;
import android.view.Window;
import android.widget.Button;

public class Main extends Activity {

    /** メディアプレイヤー（音源再生） */
    private MediaPlayer mediaPlayer;

    /** こんにちわボタン */
    private Button btnHellow;

    /** 録音ボタン */
    private Button btnRecord;

    /** 再生ボタン(標準) */
    private Button btnPlayNormal;

    /** 再生ボタン(機械) */
    private Button btnPlayRobbot;

    /** 再生ボタン(C++でフーリエ変換) */
    private Button btnPlayFftCpp;

    /** 再生ボタン(Javaでフーリエ変換) */
    private Button btnPlayFftJava;
    
    /** 再生ボタン(Wav) */
    private Button btnPlayWavNormal;

    /** 録音時間 */
    private long recoringTime = 5000;

    /** 周波数 */
    private int rate = 8000;

    @Override
    public void onCreate(
	Bundle savedInstanceState) {
	super.onCreate(savedInstanceState);
	getWindow().requestFeature(Window.FEATURE_LEFT_ICON);// アイコン表示
	setContentView(R.layout.activity_main);
	getWindow().setFeatureDrawableResource(Window.FEATURE_LEFT_ICON, R.drawable.ic_launcher);
	setTitle(R.string.app_name);// タイトル表示
	// リソースファイルから再生
	mediaPlayer = MediaPlayer.create(this, R.raw.music);
	// ボタンリスナー
	MainOnClickListener mainOnClickListener = new MainOnClickListener(this, mediaPlayer, recoringTime, rate);
	// ボタン定義
	btnHellow = (Button) findViewById(R.id.btnHellow);
	btnRecord = (Button) findViewById(R.id.btnRecord);
	btnPlayNormal = (Button) findViewById(R.id.btnPlayNormal);
	btnPlayRobbot = (Button) findViewById(R.id.btnPlayRobbot);
	btnPlayFftCpp = (Button) findViewById(R.id.btnPlayFftCpp);
	btnPlayFftJava = (Button) findViewById(R.id.btnPlayFftJava);
	btnPlayWavNormal = (Button) findViewById(R.id.btnPlayWavNormal);
	// リスナー
	btnHellow.setOnClickListener(mainOnClickListener);
	btnRecord.setOnClickListener(mainOnClickListener);
	btnPlayNormal.setOnClickListener(mainOnClickListener);
	btnPlayRobbot.setOnClickListener(mainOnClickListener);
	btnPlayFftCpp.setOnClickListener(mainOnClickListener);
	btnPlayFftJava.setOnClickListener(mainOnClickListener);
	btnPlayWavNormal.setOnClickListener(mainOnClickListener);
    }

    @Override
    public boolean onCreateOptionsMenu(
	Menu menu) {
	getMenuInflater().inflate(R.menu.activity_main, menu);
	return true;
    }

}
